Many organizations, such as companies and nonprofit organizations, use business information application programs to track their financial records, inventories, and other business-related information. These business information application programs include accounting programs, customer relation management programs, enterprise resource management programs, and so on. When an organization first installs a business information application program, it needs to specify the name of the organization (e.g., Acme Co.) and define the entities (e.g., chart of accounts and inventory items) used by the organization and configuration parameters, such as user interface labels for the entities (e.g., “cell phone number” rather than “mobile phone number”). Different types of organizations will typically define entities specific to a certain type of organization. For example, a restaurant may define an inventory account, while a law firm may have no need for an inventory account. Some business information application programs may pre-define entities that are specific to different types of organizations (e.g., restaurant). So, for example, when a restaurant installs the business information application program, the organization may specify that it is a restaurant and the business information application program may set up the database with restaurant-related entities.
Although the use of predefined entities for different types of organizations helps to alleviate some of the burden of defining all the entities for an organization, the organization would typically need to further customize the entities. For example, although a fast-food outlet and a catering service might be generally considered to be restaurants, they use very different business models and thus need to track different types of entities. The predefined entities for a restaurant may not fully satisfy the needs of either the fast-food outlet or the catering service. In such a case, both organizations may spend considerable efforts customizing business entities.
Some business information application programs allow a limited amount of information to be exported from the database of one organization and imported into the database of another organization. For example, some accounting programs may allow the chart of accounts to be exported from one organization and imported into the database of another organization. As another example, some business information application programs allow an organization to define new display pages for input and output of the organization's data. These display pages may be exported from the database of one organization and imported into the database of another organization. However, when these display pages are imported, they are simply listed as one of a series of available display pages that the user can select to interact with the business information application program.
Current business information application programs thus require extensive customization in order to meet an organization's information tracking needs.